if (priv->prelight_row)
gtk_widget_unset_state_flags (GTK_WIDGET (priv->prelight_row),
GTK_STATE_FLAG_PRELIGHT);
- priv->prelight_row = row;
- if (priv->prelight_row)
- gtk_widget_set_state_flags (GTK_WIDGET (priv->prelight_row),
- GTK_STATE_FLAG_PRELIGHT,
- FALSE);
+
+ if (row != NULL && gtk_widget_is_sensitive (GTK_WIDGET (row)))
+ {
+ priv->prelight_row = row;
+ gtk_widget_set_state_flags (GTK_WIDGET (priv->prelight_row),
+ GTK_STATE_FLAG_PRELIGHT,
+ FALSE);
+ }
+ else
+ {
+ priv->prelight_row = NULL;
+ }
+
gtk_widget_queue_draw (GTK_WIDGET (list_box));
}
}
}
row = gtk_list_box_get_row_at_y (list_box, y);
- if (row != NULL)
+ if (row != NULL && gtk_widget_is_sensitive (GTK_WIDGET (row)))
{
if (event->type == GDK_2BUTTON_PRESS)
{